1. Field of the Invention
This invention relates to Radio Frequency Identification (RFID) technology.
2. Background Art
Radio frequency identification (RFID) tags are electronic devices that may be affixed to items whose presence is to be detected and/or monitored. The presence of an RFID tag, and therefore the presence of the item to which the tag is affixed, may be checked and monitored wirelessly by devices known as “readers” or “interrogators”.
Traditionally, RFID systems are closed systems. A closed RFID system is locally controlled, and is often restricted to a specific location, and/or involves specific types of RFID tags and tag readers. Such a closed RFID system is not well-suited to businesses with dynamic operating environments. For example, if a company has several independent subsidiaries located at different geographical locations, and a movement of tagged objects is necessary between the subsidiaries, then similar RFID system infrastructure must be deployed at multiple locations, increasing operating costs. Thus, a need to shift towards an open RFID system has been felt by RFID system users.
In an open RFID system, individual tags within a population of tags have varying amounts of memory, filled with varying amounts of data. An RFID reader is therefore faced with the non-trivial problem of issuing optimized read commands for the “right” amount of data. If the reader reads too little in one round of communication, then multiple read commands must be issued, and received data from the tags must be parsed from each read to determine if an additional read is required. If the reader reads too much, air time is wasted transmitting empty bytes from the tag. In a worse condition, if the issued read command attempts to read data from a number of memory locations exceeding the size of the memory in the tag, the tag will respond with an error code instead of transmitting any data.
One conventional way to address the above described problems is to store on each tag a size indicator of how many locations of memory currently contain data. This size indicator is transmitted to the reader when the reader issues a read command. However, if this size indicator data is “perma-locked”, i.e. incapable of being updated, then additional data items cannot be added later to update information regarding the tagged object. If the size indicator data is not perma-locked, then accidental or malicious tampering of the memory location containing the size indicator data can disable other significant data written (and possibly even locked) elsewhere on the tag's memory. Adding a directory structure to the tag memory to indicate where specific data items are located does not solve this problem, because the current size of the directory is also by its nature dynamic, and the directory size, as well as the size indicator data change, as new data items are added or deleted.
In an open system, an RFID reader must be able to parse data bits in a tag's user memory according to a known format or else the data transmitted from the tag cannot be interpreted. An existing data format, defined by the International Standards Organization (ISO) and the International Electrotechnical Commission (IEC) in the ISO/IEC 15962 standard document, describes an exemplary standardized format. However, the ISO/IEC 15962 standard precedes the introduction of the Generation-2 Ultra High Frequency RFID protocol (“Gen-2” in short), defined by RFID standards organization EPCglobal (EPC stands for Electronic Product Code). Presently, EPCglobal and ISO are working to specify a standard Gen 2 user tag memory format.
Example standardized formats are targeted at efficient encoding of a finite number of data items in a suitable format. One exemplary format uses a “Packed Object” that contains a localized directory of the data items within that object. Another exemplary format supports the ability to successively add more Packed Objects to a tag's memory over time in addition to signal an optional external directory for more efficient random access of data on a tag containing a large number of packed objects. Details of the directory structure are discussed in U.S. patent application Ser. No. 11/806,050, filed May 29, 2007, entitled, “Data Format for Efficient Encoding and Access of Multiple Data Items in RFID Tags” (the '050 Application), which is incorporated herein by reference in its entirety. The '050 application suggests storing the size of the memory bank near the start or lower end of memory, so that data (or directory) information at the far or higher end of the tag can be accessed without a need to lookup the tag's identification number, known as the TID.
The exemplary formats (including the present ISO methods for data and directory storage, the various data encoding formats including the Packed Object format, and the various natural extensions of the Packed Object format to support an external directory) have one feature in common. The end of currently-written data is indicated by using a zero-valued delimiter pattern (usually a zero-valued byte) at the location where a new data object (or directory entry) is expected to begin.
Therefore, what is needed is an efficient and standardized way of accessing variable amounts of data from a tag's memory, where communication resources are optimized by correctly recognizing an end of currently-written data when an intended delimiter data pattern is identified, while ignoring spurious delimiter data patterns.
The present invention will be described with reference to the accompanying drawings. The drawing in which an element first appears is typically indicated by the leftmost digit(s) in the corresponding reference number.